/**
 * https://leetcode.cn/problems/next-greater-element-i/submissions/
 * 496.下一个更大的元素|
 * easy 2024.12.26
 * 单调栈
 */

class Solution {
public:
    vector<int> nextGreaterElement(vector<int>& nums1, vector<int>& nums2) {
        vector<int> v(10010,-1);
        for(int i=0;i<nums1.size();++i)
            v[nums1[i]]=i;
        int n=nums2.size();
        vector<int> ans(nums1.size(),-1);
        for(int i=n-1;i>=0;--i){
            if(v[nums2[i]]>=0){
                for(int j=i+1;j<n;++j){
                    if(nums2[j]>nums2[i]){
                        ans[v[nums2[i]]]=nums2[j];
                        break;
                    }
                }
            }
        }
        return ans;
    }
};